import tkinter as tk
import pymssql
#上级管理部门-查询监测信息的页面
#monitoring_info_page.py
def open_monitoring_info(entry1_value):
    monitoring_info_window = tk.Tk()
    monitoring_info_window.title("上级主管部门-监测信息页面")
    monitoring_info_window.geometry("400x300")

    # 提示文本
    label_prompt = tk.Label(monitoring_info_window, text="请输入监测植物的名称：")
    label_prompt.pack()

    # 输入框
    entry_plant_name = tk.Entry(monitoring_info_window)
    entry_plant_name.pack()

    # 显示框
    display_text = tk.Text(monitoring_info_window, height=10, width=40)
    display_text.pack()

    # 显示按钮
    def show_monitoring_info():
        plant_name = entry_plant_name.get()
        monitoring_data = get_monitoring_info(plant_name)
        display_text.delete(1.0, tk.END)
        display_text.insert(tk.END, monitoring_data)

    show_button = tk.Button(monitoring_info_window, text="显示监测信息", command=show_monitoring_info)
    show_button.pack()

    monitoring_info_window.mainloop()

# 从数据库中获取植物监测信息
def get_monitoring_info(plant_name):
    try:
        # 连接到数据库
        conn = pymssql.connect(
            host='localhost',
            user='CSY',
            password='211002624',
            database='植物管理系统',
            as_dict=True
        )
        cursor = conn.cursor()

        # 执行查询语句
        query = f"SELECT * FROM 监测 WHERE 监测对象 = '{plant_name}'"
        cursor.execute(query)

        # 获取查询结果
        monitoring_data = cursor.fetchall()

        # 关闭数据库连接
        conn.close()

        # 格式化结果
        formatted_data = ""
        for data in monitoring_data:
            formatted_data += f"监测编号: {data['监测编号']}, 监测时间: {data['监测时间']}, 监测人员: {data['监测人员']}, 监测对象: {data['监测对象']}, 监测地点: {data['监测地点']}, 监测设备: {data['监测设备']}\n"

        return formatted_data
    except Exception as e:
        print(f"Error: {e}")
        return "查询失败，请检查数据库连接和查询语句。"
